export interface CourseInfo {
  id: string;
  name: string;
  code?: string;
  description?: string;
  teacher: {
    id: string;
    name: string;
  };
  teacherName?: string;
  semester?: string;
  schedule: string;
  location: string;
  classroom?: string;
  credit?: number;
  capacity: number;
  enrolled: number;
  status?: "active" | "inactive";
  createTime?: string;
}

export interface ExamInfo {
  id: string;
  name: string;
  courseId: string;
  courseName?: string;
  startTime: string;
  endTime: string;
  duration: number;
  totalScore: number;
  status: "upcoming" | "ongoing" | "completed";
}

export interface HomeworkInfo {
  id: string;
  title: string;
  courseId: string;
  courseName?: string;
  deadline: string;
  description: string;
  status: "pending" | "submitted" | "graded";
  score?: number;
}

export interface DashboardItem {
  id: string;
  type: "exam" | "homework";
  courseId: string;
  courseName: string;
  data: ExamInfo | HomeworkInfo;
}
